<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>AJAX GET 请求</title>
    <style>
      #result {
        width: 200px;
        height: 100px;
        border: solid 1px #90b;
      }
    </style>
  </head>
  <body>
    <button>点击发送请求</button>
    <div id="result"></div>

    <script>
      const btn = document.getElementsByTagName('button')[0]
      const result = document.getElementById('result')
      btn.onclick = function () {
        // 1.创建对象
        const xhr = new XMLHttpRequest()
        // 2.初始化 设置请求方法和url
        xhr.open('GET', 'http://127.0.0.1:8000/server?a=100&b=200&c=300')
        // 3.发送
        xhr.send()
        // 4.事件处理 处理服务器端返回的结果
        xhr.onreadystatechange = function () {
          // readystate 是 xhr 对象中的属性，表示状态 0 1 2 3 4
          // 0 最开始属性值为
          // 1 表示open方法调用完毕
          // 2 表示send犯法调用完毕
          // 3 表示服务端返回的部分结果
          // 4 表示服务端返回的所有结果
          if (xhr.readyState === 4) {
            //   判断响应状态码
            if (xhr.status >= 200 && xhr.status < 300) {
              // 处理结果 行 头 空行 体
              // 1.响应行
              console.log(xhr.status)
              console.log(xhr.statusText)
              console.log(xhr.getAllResponseHeaders()) // 所有响应头
              console.log(xhr.response) // 响应体
              result.innerHTML = xhr.response
            }
          }
        }
      }
    </script>
  </body>
</html>
